Advanced configurations for Kubernetes deployment

Using an existing namespace

  1. The default value of the profiler’s namespace is hyperscale-snowflake-profiler-service. To use an existing namespace and change the parameter namespace in values.yaml

Copy
namespace: hyperscale-services # example: same as hyperscale services
  1. And set createNamespace to false

Copy
createNamespace: false

Creating a NodePort service instead of ClusterIP

  1. You can create a NodePort service instead of ClusterIP service by editing the service.type value in values.yaml. This allows you to access the profiler without the need of Kubernetes ingress configuration.

Copy
service:
  type: NodePort

 

  1. Run the following commands to identify the port that needs to be used to access the profiler. The node port can be identified from the output: 8080:<node_port>

Copy
$ kubectl get services –namespace <profiler-namespace>
<profiler-namespace>   snowflake-profiler-k8s-service   NodePort    10.152.183.125   <none>        8080:30041/TCP           6s

 

  1. The profiler can now be accessed using url http://<node_ip>:<node_port>

Managing the CPU and memory resources available to the profiler pod

The resource section which is commented by default can be used to manage the resources that should be attached to the profiler service.

Copy
resources:
   requests:
     memory: "256Mi"
     cpu: "100m"
   limit:
     memory: "512Mi"
     cpu: "500m"